package dominio;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Embeddable;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;

@Entity
@Table(name="rodamientos")
//@Embeddable

@NamedQueries({@NamedQuery(name="existeNs", query="select roda from Rodamiento roda where roda.numeroSerie=:ns" )
, @NamedQuery(name="mismoRodamiento", query="select r from Rodamiento r where r.numeroSerie=:ns and r.sufijo=:s and r.marca=:m and r.origen=:o")})

public class Rodamiento implements Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	
	@Id
	@GeneratedValue(strategy=GenerationType.AUTO)
	@Column(name="IdRodamiento")
	private int idRodamiento;
	
	@Column(name="numeroSerie", nullable=false)
	private String numeroSerie ;
	
	@Column(name="sufijo", nullable=false)
	private String  sufijo;
	
	@Column(name="marca", nullable=false)
	private String  marca;
	
	@Column(name="origen", nullable=false)
	private String  origen;

	
	@Column(name="precio")
	private float precio;
	
	@Column(name="stock")
	private int stock;
	
	@Column(name="caracteristica")
	private String caracteristica;
	
	

	public int getStock() {
		return stock;
	}
	public void setStock(int stock) {
		this.stock = stock;
	}
	public String getCaracteristica() {
		return caracteristica;
	}
	public void setCaracteristica(String caracteristica) {
		this.caracteristica = caracteristica;
	}
	
	public float getPrecio() {
		return precio;
	}
	public void setPrecio (float precio) {
		this.precio = precio;
	}
	public String getNumeroSerie() {
		return numeroSerie;
	}
	public void setNumeroSerie(String numeroSerie) {
		this.numeroSerie = numeroSerie;
	}
	public String getSufijo() {
		return sufijo;
	}
	public void setSufijo(String sufijo) {
		this.sufijo = sufijo;
	}
	public String getMarca() {
		return marca;
	}
	public void setMarca(String marca) {
		this.marca = marca;
	}
	public String getOrigen() {
		return origen;
	}
	public void setOrigen(String origen) {
		this.origen = origen;
	}
	public int getIdRodamiento() {
		return idRodamiento;
	}
	public void setIdRodamiento(int idRodamiento) {
		this.idRodamiento = idRodamiento;
	}
	@Override
	public String toString() {
		return "numeroSerie=" + numeroSerie + "\nsufijo=" + sufijo
				+ "\n marca=" + marca + "\norigen=" + origen + "\n precio="
				+ precio + "\nstock=" + stock + "\ncaracteristica="
				+ caracteristica;
	}	
}
